var game = new Phaser.Game(640, 480, Phaser.AUTO, 'phaser-example', { preload: preload, create: create, update: update});

function preload() {

    game.load.tilemap('map', 'level.csv', null, Phaser.Tilemap.CSV);
    game.load.image('tiles', '16.png');
    game.load.image('player', 'player.png');

}

var map;
var layer;
var cursors;
var player;

function create() {

    //  Because we're loading CSV map data we have to specify the tile size here or we can't render it
    map = game.add.tilemap('map', 64, 64);

    //  Now add in the tileset
    map.addTilesetImage('tiles');
    map.setCollisionBetween(3, 4);
    map.setCollisionBetween(1, 1);
 
    //  Create our layer
    layer = map.createLayer(0);

    //  Resize the world
    layer.resizeWorld();

    // Player
    player = game.add.sprite(0,0,"player");
    game.physics.enable(player);
    game.physics.arcade.gravity.y = 200;
    player.body.bounce.set(0.6);
    //keep player on screen
    player.body.collideWorldBounds=true;
    //enable keyboard input
    cursors = game.input.keyboard.createCursorKeys();

}

function update() {
  game.physics.arcade.collide(player, layer);
  playerControls();
}

function playerControls(){
    if (cursors.up.isDown)
    {
        player.body.velocity.y = -150;
    }
    else if (cursors.down.isDown)
    {
        player.body.velocity.y = 150;
    }

    if (cursors.left.isDown)
    {
        player.body.velocity.x = -150;
    }
    else if (cursors.right.isDown)
    {
        player.body.velocity.x = 150;
    }
}